従量課金でお手軽に 1秒未満の低遅延ライブ配信が行えるサービス「hesp.live」がリリースされたので触ってみた
こんにちは、大前です。
動画プレイヤー製品である THEOplayer を開発している THEO Technologies 社 より新サービス hesp.live がリリースされましたので、早速触っていきたいと思います。
hesp.live とは
hesp.live はリアルタイムストリーミングを実現するためのサービスで、エンコードやパッケージング、CDN から動画プレイヤーまで、ライブ配信に必要な要素を包含しているため利用者は OBS 等の配信ソフトウェアを利用するだけで簡単にライブ配信を始める事ができます。
hesp.live の最大の特徴として、HTTP ベースの低遅延プロトコルである High Efficiency Streaming Protocol (HESP) が利用されている事が挙げられます。
HESP とは HESP Alliance が中心となり標準化等を推進しているプロトコルで、THEO Technologies は HESP Alliance の創業メンバーでもあります。 CMAF Chunked Transfer Encoding(CMAF-CTE) や LL-HLS といった、現在 HTTP ベースで低遅延配信を実現するために用いられる技術よりもさらに短い遅延の実現を目指したプロトコルとなっています。 具体的には、CMAF-CTE や LL-HLS が一般に 2~3秒の遅延と言われている事に対し、HESP は HTTP ベースのライブ配信にも関わらず 400ミリ秒の遅延を実現するプロトコルと謳われています。
HESP enables sub-second end-to-end latency, as low as 400ms.
(www.hespalliance.org より引用)
こういった新しいプロトコルはクライアント側の対応が必要となりますが、hesp.live には HESP に対応した動画プレイヤーも含まれています。そのため、ユーザは hesp.live を使うだけで最新のプロトコルを利用した超低遅延ライブストリーミングを利用する事ができ、これが大きな強みとなっています。元々 THEOplayer という動画プレイヤー製品を持ちつつ、HESP Alliance のメンバーとして HESP に携わってきた THEO Technologies の強みが生きたサービスであることを感じられますね。
料金
hesp.live は従量課金の仕組みとなっていて、以下の 2つの要素に基づいて課金が発生します。
- Transcoding ... hesp.live に対する 1つの動画取り込みあたり $0.07/分
- Streaming ... hesp.live に対する視聴者1人あたり $0.0015/分
hesp.live の価格ページでは視聴者とライブストリームの時間を選択するだけで課金額の見積もりが可能になっていますので、気になる方は試してみてください。
やってみた
hesp.live チャンネルを作成してみる
hesp.live は無料トライアルが利用可能なため、実際に hesp.live を使ってみたいと思います。
hesp.live にログインすると下記のような画面が表示されますので、右上の「Sign in」をクリックします。
メールアドレスもしくは、Google アカウントでのログインが可能ですので、登録してログインを行います。
ログインすると管理画面に遷移します。紫色ベースでかっこいいですね。中央にある「Create Channel」をクリックします。
作成するチャンネル名と、リージョンの選択を求められます。リージョンは現時点で 3つ選べますがまだ日本はなかったため、選択肢の中で一番近そうな "us-west" としました。
"Advanced" のタブを開くと他にも設定が色々見えますが、今回は特に何も触らずに「Create」をクリックしてチャンネル作成を完了します。
チャンネル作成が完了するとチャンネルの詳細画面に遷移します。それぞれどんな情報があるか見てみます。
ライブストリームのプレビュー画面、チャンネルの詳細画面。チャンネルの ID は後ほど利用するためメモしておきます。
作成したチャンネルへストリームを入力するための情報、動画プレイヤーのカスタマイズ。URL と Stream Key は配信を行う際に利用するためメモしておきます。
HTML へプレイヤーを埋め込むためのサンプルコード、フェイルオーバー設定、入力に関する設定
HTML ファイルを用意する
hesp.live のチャンネルは作成できたので、ライブストリームを再生する HTML ファイルを用意します。公式ドキュメントに HTML のサンプルがありますので、こちらをベースにファイルを用意します。
今回は以下の HTML ファイルを用意し、S3 にアップロードしてパブリックにアクセスできる状態にしました。<your-channel-id>
には、hesp.live のチャンネル詳細画面で確認できる ID を記載します。
<!DOCTYPE html> <html> <head> <title>Test page</title> </head> <body> <h1>Testing embed.js</h1> <div data-hesp-live-id="<your-channel-id>" style="width: 600px; height: 400px" ></div> <script type="text/javascript" src="https://cdn.hesp.live/player/embed.js" async></script> </body> </html>
S3 上の HTML ファイルにアクセスしてみると、まだライブ配信を行っていないため "The live stream hasn't started yet" と表示されています。
ライブ配信を行ってみる
hesp.live と再生側の HTML の準備ができたので、いよいよライブ配信を行ってみます。hesp.live は RTMP PUSH に対応しているため、今回は OBS を利用して hesp.live に配信を行います。
また、hesp.live のドキュメントには OBS で配信を行う際の設定値についてもドキュメントが用意されていますので、これに従って OBS を設定していきます。
OBS を起動し、「設定」→「配信」より、以下の設定を行います。
- サービス ... カスタム
- サーバー ... hesp.live チャンネル詳細画面の「RTMP Push」欄の「URL」
- ストリームキー ... hesp.live チャンネル詳細画面の「RTMP Push」欄の「Stream Key」
また、「設定」→「出力」より以下の設定を行います。
- 出力モード ... 詳細
- CPU使用のプリセット ... veryfast
- プロファイル ... main
- チューン ... zerolatency
これで準備が完了しましたので、「配信開始」をクリックします。右下の四角が緑になっていれば OK です。
hesp.live の画面に戻り、右上の「Start」をクリックする事でチャンネルを起動させます。
起動までに数秒かかります。
チャンネルが起動すると、プレビュー画面に再生ボタンが現れ、プレビュー画面の下に "Channel is receiving RTMP feed and running" と表示されました。
HTML 側も同じく再生ボタンが表示されています。
hesp.live のプレビュー画面、HTML 上のプレイヤーそれぞれで再生ボタンをクリックすると、配信しているストリームが再生できました。無料版を利用している場合、"hesp.live Demo channel" という透かしが入るようです。
OBS の配信画面と HTML の画面を比べてみます。OBS 側のタイムコードが 00:03:10:07 である事に対して、HTML 側のタイムコードが 00:03:09:00である事から、1秒未満の遅延で配信できている事が確認できます。国外のリージョンを経由しているにも関わらず、1秒の遅延でライブ配信できているのはすごいですね。また、再生品質についても視認する分には全く問題を感じませんでした。
おわりに
THEO Technologies 社の新しいサービスである hesp.live を触ってみました。
OBS 等で配信を行った事がある人であれば 30分もかからずにライブ配信を始められる手軽さに加え、日本リージョン未サポートの状態でも HTTP ベースのライブ配信で 2秒以下の低遅延配信を実現でき、非常に優れたサービスだと感じました。
また、料金も従量課金であるため、一時的にイベント等で利用する、といった活用もできそうです。
エンコードから動画プレイヤーまで丸っとカバーしているライブ配信サービスとして、AWS には Amazon Interactive Video Service(Amazon IVS) が存在しています。役割やカバーする範囲は hesp.live も Amazon IVS ほぼ同じとなっていますので、要件や費用感に合わせてサービス選定していくのが良さそうです。
まだリリースしたてということもあり、hesp.live にはまだまだ足りない機能があるかも知れませんが、1秒未満のライブ配信をお手軽に実現できるサービスとして、高いポテンシャルを感じました。今後のアップデートに期待したいと思います。
また、クラスメソッドは THEO Technologies 社の製品パートナーとなっております。サービスについてご興味ありましたら、お気軽にお問い合わせください。
以上、AWS 事業本部の大前でした。